From: Ray Strode Date: Fri, 16 Aug 2013 14:29:26 +0000 (-0400) Subject: gdmUtil: factor out some duplicated code in beginVerification X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~3705 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=fd11ad95f61b904d6f7014f8d56c1c27d88af65c;p=gnome-shell.git gdmUtil: factor out some duplicated code in beginVerification The duplication makes the function look a lot more complicated than it actually is. This commit moves the common code to a new _startService function. https://bugzilla.gnome.org/show_bug.cgi?id=683437 --- diff --git a/js/gdm/util.js b/js/gdm/util.js index f41b2b2f8..acab4711c 100644 --- a/js/gdm/util.js +++ b/js/gdm/util.js @@ -317,61 +317,30 @@ const ShellUserVerifier = new Lang.Class({ this._defaultService = PASSWORD_SERVICE_NAME; }, - _beginVerification: function() { + _startService: function(serviceName) { this._hold.acquire(); + this._userVerifier.call_begin_verification_for_user(serviceName, + this._userName, + this._cancellable, + Lang.bind(this, function(obj, result) { + try { + obj.call_begin_verification_for_user_finish(result); + } catch(e if e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED)) { + return; + } catch(e) { + this._reportInitError('Failed to start verification for user', e); + return; + } - if (this._userName) { - this._userVerifier.call_begin_verification_for_user(this._getForegroundService(), - this._userName, - this._cancellable, - Lang.bind(this, function(obj, result) { - try { - obj.call_begin_verification_for_user_finish(result); - } catch(e if e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED)) { - return; - } catch(e) { - this._reportInitError('Failed to start verification for user', e); - return; - } - - this._hold.release(); - })); + this._hold.release(); + })); + }, - if (this._haveFingerprintReader) { - this._hold.acquire(); - - this._userVerifier.call_begin_verification_for_user(FINGERPRINT_SERVICE_NAME, - this._userName, - this._cancellable, - Lang.bind(this, function(obj, result) { - try { - obj.call_begin_verification_for_user_finish(result); - } catch(e if e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED)) { - return; - } catch(e) { - this._reportInitError('Failed to start fingerprint verification for user', e); - return; - } - - this._hold.release(); - })); - } - } else { - this._userVerifier.call_begin_verification(this._getForegroundService(), - this._cancellable, - Lang.bind(this, function(obj, result) { - try { - obj.call_begin_verification_finish(result); - } catch(e if e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED)) { - return; - } catch(e) { - this._reportInitError('Failed to start verification', e); - return; - } - - this._hold.release(); - })); - } + _beginVerification: function() { + this._startService(this._getForegroundService()); + + if (this._userName && this._haveFingerprintReader) + this._startService(FINGERPRINT_SERVICE_NAME); }, _onInfo: function(client, serviceName, info) {